/*!
\copyright  Copyright (c) 2024 Qualcomm Technologies International, Ltd.
            All Rights Reserved.
            Qualcomm Technologies International, Ltd. Confidential and Proprietary.
\file       streaming_statistics_payload.h
*/
#ifndef STREAMING_STATISTICS_PAYLOAD_H
#define STREAMING_STATISTICS_PAYLOAD_H

typedef struct
{
    uint64_t module_instance_id;
    uint64_t bitrate_payload_size;
    uint32_t timestamp;
    uint32_t last_ttp;
    uint32_t bytes_processed;
    uint32_t packets_processed;
} r2_2_bitrate_pid_payload_t;

typedef struct
{
    uint64_t module_instance_id;
    uint64_t stats_size;
    uint32_t sampling_frequency;
    uint32_t frame_duration;
    uint32_t plc_off;
    uint32_t pre_decode_audio;
    uint32_t frame_count;
    uint32_t frame_error_count;
    uint32_t packet_size;
    uint32_t sdu_count;
    uint32_t wbm_count;
    uint32_t ft_count;
    uint32_t ft_value;
    uint32_t lossless_mode;
    uint32_t lossless_format;
    uint32_t bitrate;

} r3_stats_pid_payload_t;

typedef struct
{
    uint64_t module_instance_id;
    uint64_t stats_size;
    uint32_t sampling_frequency;
    uint32_t num_channels;
    uint32_t frame_duration;
    uint32_t plc_off;
    uint32_t frame_count;
    uint32_t frame_error_count;
    uint32_t packet_size;
    uint32_t sdu_count;
    uint32_t wbm_count;
    uint32_t ft_count;
    uint32_t ft_value;
    uint32_t bitrate;
    uint32_t lossless_mode;
    uint32_t silence_count_1;
    uint32_t decoded_packet_count_1;
    uint32_t sync_found_count_1;
    uint32_t sync_lost_count_1;
    uint32_t marker_change_count_1;
    uint32_t config_changed_count_1;
    uint32_t silence_count_2;
    uint32_t decoded_packet_count_2;
    uint32_t sync_found_count_2;
    uint32_t sync_lost_count_2;
    uint32_t marker_change_count_2;
    uint32_t config_changed_count_2;
} r4_stats_pid_payload_t;

typedef struct
{
    uint64_t module_instance_id;
    uint64_t ssrc_size;
    uint32_t ssrc;
} ssrc_pid_payload_t;

#endif
